package com.fliad.viid.modular.cascadeplatform.domain;

import lombok.Data;

import java.util.List;

/**
 * 案事件标注人员对象（参照文档附录A.11.2，案事件标注场景下的人员扩展信息）
 */
@Data
public class CaseAnnotatedPerson {

    // 1. 人员标识（必选）
    private String PersonID;
    // 2. 信息分类（人工采集/自动采集，必选）
    private String InfoKind;
    // 3. 来源图像信息标识（必选）
    private String SourceID;
    // 4. 设备编码（自动采集必选，可选）
    private String DeviceID;
    // 5. 人员轮廓左上角X坐标（自动采集必选，可选）
    private Integer LeftTopX;
    // 6. 人员轮廓左上角Y坐标（自动采集必选，可选）
    private Integer LeftTopY;
    // 7. 人员轮廓右下角X坐标（自动采集必选，可选）
    private Integer RightBtmX;
    // 8. 人员轮廓右下角Y坐标（自动采集必选，可选）
    private Integer RightBtmY;
    // 9. 位置标记时间（人工采集时有效，可选）
    private String LocationMarkTime;
    // 10. 人员出现时间（可选）
    private String PersonAppearTime;
    // 11. 人员消失时间（可选）
    private String PersonDisAppearTime;
    // 12. 证件种类（可选）
    private String IDType;
    // 13. 证件号码（有效证件号码，可选）
    private String IDNumber;
    // 14. 姓名（人员中文姓名全称，可选）
    private String Name;
    // 15. 曾用名（可选）
    private String UsedName;
    // 16. 绰号（可选）
    private String Alias;
    // 17. 性别代码（可选）
    private String GenderCode;
    // 18. 年龄上限（最大可能年龄，可选）
    private Integer AgeUpLimit;
    // 19. 年龄下限（最小可能年龄，可选）
    private Integer AgeLowerLimit;
    // 20. 民族代码（中国各民族罗马字母拼写法和代码，可选）
    private String EthicCode;
    // 21. 国籍代码（世界各国和地区名称代码，可选）
    private String NationalityCode;
    // 22. 籍贯省市县代码（可选）
    private String NativeCityCode;
    // 23. 居住地行政区划（可选）
    private String ResidenceAdminDivision;
    // 24. 汉语口音代码（汉语口音编码规则，可选）
    private String ChineseAccentCode;
    // 25. 单位名称（人员所在工作单位，可选）
    private String PersonOrg;
    // 26. 职业类别代码（职业分类与代码，不含“—”，可选）
    private String JobCategory;
    // 27. 同行人数（被标注人的同行人数，可选）
    private Integer AccompanyNumber;
    // 28. 身高上限（单位：cm，可选）
    private Integer HeightUpLimit;
    // 29. 身高下限（单位：cm，可选）
    private Integer HeightLowerLimit;
    // 30. 体型（可选）
    private String BodyType;
    // 31. 肤色（可选）
    private String SkinColor;
    // 32. 发型（可选）
    private String HairStyle;
    // 33. 发色（可选）
    private String HairColor;
    // 34. 姿态（可选）
    private String Gesture;
    // 35. 状态（可选）
    private String Status;
    // 36. 脸型（可选）
    private String FaceStyle;
    // 37. 脸部特征（可选）
    private String FacialFeature;
    // 38. 体貌特征（可选）
    private String PhysicalFeature;
    // 39. 体表特征（可选）
    private String BodyFeature;
    // 40. 习惯动作（可选）
    private String HabitualMovement;
    // 41. 行为（可选）
    private String Behavior;
    // 42. 行为描述（可选）
    private String BehaviorDescription;
    // 43. 附属物（多个用英文半角分号“;”分隔，可选）
    private String Appendant;
    // 44. 附属物描述（可选）
    private String AppendantDescription;
    // 45. 伞颜色（可选）
    private String UmbrellaColor;
    // 46. 口罩颜色（可选）
    private String RespiratorColor;
    // 47. 帽子款式（可选）
    private String CapStyle;
    // 48. 帽子颜色（可选）
    private String CapColor;
    // 49. 眼镜款式（可选）
    private String GlassStyle;
    // 50. 眼镜颜色（可选）
    private String GlassColor;
    // 51. 围巾颜色（可选）
    private String ScarfColor;
    // 52. 包款式（可选）
    private String BagStyle;
    // 53. 包颜色（可选）
    private String BagColor;
    // 54. 上衣款式（可选）
    private String CoatStyle;
    // 55. 上衣长度（可选）
    private String CoatLength;
    // 56. 上衣颜色（可选）
    private String CoatColor;
    // 57. 裤子款式（可选）
    private String TrousersStyle;
    // 58. 裤子颜色（可选）
    private String TrousersColor;
    // 59. 裤子长度（可选）
    private String TrousersLen;
    // 60. 鞋子款式（可选）
    private String ShoesStyle;
    // 61. 鞋子颜色（可选）
    private String ShoesColor;
    // 62. 是否驾驶员（0:否，1:是，2:不确定，人工采集必选，可选）
    private Integer IsDriver;
    // 63. 是否涉外人员（0:否，1:是，2:不确定，可选）
    private Integer IsForeigner;
    // 64. 护照证件种类（可选）
    private String PassportType;
    // 65. 出入境人员类别代码（出入境人员分类代码，可选）
    private String ImmigrantTypeCode;
    // 66. 是否涉恐人员（0:否，1:是，2:不确定，可选）
    private Integer IsSuspectedTerrorist;
    // 67. 涉恐人员编号（可选）
    private String SuspectedTerroristNumber;
    // 68. 是否涉案人员（0:否，1:是，2:不确定，可选）
    private Integer IsCriminalInvolved;
    // 69. 涉案人员专长代码（可选）
    private String CriminalInvolvedSpecilisationCode;
    // 70. 体表特殊标记（可选）
    private String BodySpeciallMark;
    // 71. 作案手段（可选）
    private String CrimeMethod;
    // 72. 作案特点代码（可选）
    private String CrimeCharacterCode;
    // 73. 在逃人员编号（可选）
    private String EscapedCriminalNumber;
    // 74. 是否在押人员（0:否，1:是，2:不确定，人工采集必填，可选）
    private Integer IsDetainees;
    // 75. 看守所编码（可选）
    private String DetentionHouseCode;
    // 76. 在押人员身份（参照文档附录B，可选）
    private String DetaineesIdentity;
    // 77. 在押人员特殊身份（可选）
    private String DetaineesSpecialIdentity;
    // 78. 成员类型代码（可选）
    private String MemberTypeCode;
    // 79. 是否被害人（0:否，1:是，2:不确定，人工采集必选，可选）
    private Integer IsVictim;
    // 80. 被害人种类（可选）
    private String VictimType;
    // 81. 受伤害程度（可选）
    private String InjuredDegree;
    // 82. 尸体状况代码（可选）
    private String CorpseConditionCode;
    // 83. 是否可疑人（0:否，1:是，2:不确定，人工采集必选，可选）
    private Integer IsSuspiciousPerson;
    // 84. 图像列表（包含0或多个子图像对象，可选）
    private List<SubImageInfo> SubImageList;
    // 85. 特征值列表（可选）
    private List<FeatureInfo> FeatureList;
    // 86. 归属分类标签标识（可选）
    private String TabID;

}
